#ifndef PICCOLO_MESH_H
#define PICCOLO_MESH_H

#include "Graphics/PiccoloVKBuffer.h"
#include "PiccoloGeometryUtil.h"

namespace Piccolo
{
    class PiccoloMesh
    {
    public:
        PiccoloMesh(const std::vector<PiccoloVertex>& vertices, const std::vector<uint32_t>& indices = {});
        ~PiccoloMesh();

        void Draw(VkCommandBuffer cmdBuffer);

    private:
        std::shared_ptr<PiccoloVKBuffer> mVertexBuffer;
        std::shared_ptr<PiccoloVKBuffer> mIndexBuffer;
        uint32_t mVertexCount;
        uint32_t mIndexCount;
    };
}

#endif